package com.xbongbong.saas.service;

import com.xbongbong.paas.toolbox.exception.XbbException;
import com.xbongbong.paas.toolbox.wrap.BaseVO;
import com.xbongbong.pro.marketManage.pojo.dto.MarketActivity4StatisticsRecalculateDTO;
import com.xbongbong.pro.marketManage.pojo.dto.MarketActivity4StatisticsSyncContractDTO;
import com.xbongbong.pro.marketManage.pojo.dto.MarketActivityForStaticDTO;

/**
 * @author guohui.zhang
 * @Title: 市场活动专门为统计的表      除了这个service 还有个MarketActivityForStaticHelp
 * @date 2020/12/1813:48
 */
public interface MarketActivityForStaticService {
    /**
     * todo 修复脚本的逻辑 确定数据的唯一性(市场活动id-销售线索id-客户id-机会id)
     * 1.查询出当前所有的市场活动
     * 2.对市场活动查询出所有相关的销售线索
     * 3.对销售线索查询出所有相关的客户
     * 4.对客户查询出所有相关的销售机会，并分出赢单数据
     * 5.先逻辑删除对市场活动相关的数据，可以先把del置为2(置为2的原因是，做好回滚的准备，防止出错后可以恢复)
     * 6.重新进行插入，并物理删除之前对市场活动相关数据置为2的数据
     */
    @Deprecated
    BaseVO staticMarketActivity(MarketActivityForStaticDTO marketActivityForStaticDTO) throws XbbException;

    /**
     * 同步合同
     * date: 2022/3/16 9:46 上午
     *
     * @param marketActivity4StatisticsSyncContractDTO:
     * @Author yingjf
     */
    BaseVO syncContract(MarketActivity4StatisticsSyncContractDTO marketActivity4StatisticsSyncContractDTO) throws XbbException;

    /**
     * 重新统计
     * date: 2022/3/16 9:49 上午
     *
     * @param marketActivity4StatisticsRecalculateDTO:
     * @Author yingjf
     */
    BaseVO recalculate(MarketActivity4StatisticsRecalculateDTO marketActivity4StatisticsRecalculateDTO) throws XbbException;

    /**
     * 重新统计包括回收站的
     * date: 2022/3/23 9:03 上午
     *
     * @param recalculateDTO:
     * @Author yingjf
     */
    BaseVO recalculateIncludeRecycle(MarketActivity4StatisticsRecalculateDTO recalculateDTO) throws XbbException;


}
